Memory address transformation system

ABSTRACT

A system is disclosed in which an input binary address is transformed into a set of module select signals and a set of address signals whereby an aggregate of memory modules, each of which may contain a different number of storage cells, are combined to form a memory assembly which has a fixed number of storage cells. The address transformation system uses signals taken from the individual modules which represent the number of memory cells contained therein.

United States Patent Elmer et al.

[ 1 May 28, I974 (54) MEMORY ADDRESS TRANSFORMATION 3.737.860 6/1973 Sporer .7 34071725 SYSTEM [75] Inventors: Ben R. Elmer, Glendale; Melvin H. 'f' 'F Hcmm Eklund Ph0niX both of Ari?" Assistant brammer]ames D. Thomas Attorney, Agent. or Firm-Dudley T. Ready; Edward [73] Assignee: Honeywell Information Systems, w H h Hgnry K Woodward lnc., Waltham, Mass.

[22] Filed: Jan. 15, l973 57 S C PP 323536 A system is disclosed in which an input binary address is transformed into a set of module select signals and a [52] us CL H 340/1725 set of address signals whereby an aggregate of memory [51] Int. Cl u Gllc 7/00 modules, each of which may contain a different numlsgl Field of Search 340M725 173 174 ber of storage cells, are combined to form a memory assembly which has a fixed number of storage cells. {56] References Cited The address transformation system uses signals taken UNITED STATES PATENTS {)rom the indlvldual modules which represent the numer of memory cells contained therein. 3,3l7,902 5/l967 Michael H 340/1725 3,562,719 2/t971 Hynes et al v v t i H 340/1725 4 Claims, 9 Drawing Figures m1 ADDRESS LINES l8 s-n l i e-u l/ T T i i it i in i H i in i b5 2 MEMORY EB MEMORY EC MEMORY 2 MEMORY 5 MEMORY DEVICE A F DEVlCE B DEVICEC DEVICE 0 DEVICE E i ADDER I] ABDE i os I 23 's-s E r, I 3/ '32 AABDE 33 1 p34 COMPARATOR COMPARATDR COMPARATOR COMPARATOR A-x Aa-x eE-x E-x c ao x'2-5 30 ie" is SELECTOR SELECTOR SELECTOR AB C DE A} 8 Z-fi L 1 113 52 SUBTRACTER SUBTRACTER SUBTRACTER X-A X-AB x-e (I L Y3 Y2 MULTIPLEXER v i e 1 PATETTTEnmza I974 3.8 1 3.652

MU l U 1 INPUT ADDRESS LINES l8 e-TT I} s-u T h T i N T H E T {N E i N 55 MEMORY EB MEMORY EC MEMORY g MEMORY E MEMORY DEVICE A T DEVICE B OEvTcEC DEVICE D F OEvTCE E AOOER 22 ADE ADDER ABDE -5 I 23 x' I T 3/ T {32 A ABDE {y 33 V I34 COMPARATOR COMPARATOR COMPARATOR COMPARATOR A-x AB-X OE-x E-x T T V L 5-42 SELECTOR SELECTOR SELECTOR AB c DE EA EB 2-5 l 0 E T r 52 SUBTRACTER SUBTRACTER SUBTRACTER x-A X-AB x-E & h

T T T T T T T T 1' L MULTIPLEXER T L 2-5 Ii 5. -.1'

SAT SOURCE DRAIN PATENTEDIAY 28 1914 SHEEI 3 U 7 PMENTEIJIW SHEEISBFT MAS III 5-5 PATENTED IAY 28 I374 STROBE I212I I FIELD OF THE INVENTION This invention relates to digital computer apparatus for combining a set of memory modules to form a memory assembly which is addressable by a binary address in a conventional manner where the memory modules have different numbers of storage elements. that is. having differing sizes.

DESCRIPTION OF THE PRIOR ART At the present time, substantially all electronic digital computer hardware is binary oriented. Binary organizations are inherently the most efficient and economical approaches to hardware design. Particularly for memory systems, it has become standard practice to design and manufacture units on the basis of powers of two. For example, current random access integrated circuit memory units typically store [.024 (2) bits. Such units include circuitry which decodes an address on address lines and selects one of the 1,024 storage elements for the desired read/write operations.

This design approach assumes that an integrated circuit chip has been manufactured with all elements meeting specifications. It is common practice to manufacture integrated circuits in batches and discard chips which fail to meet the specifications. Satisfactory manufacturing yields can be obtained even for quite com' plex integrated circuits but with increasing complexity a point is reached where the yield is no longer satisfactory. Of particular interest is a memory module disclosed in allowed US. Pat. application Ser. No. 307,317. Semiconductor Mass Memory filed Nov. 2 l. I972. by John C. Hunter. assigned to the the present assignee which is preferably comprised of a complete wafer having on the order of It) semiconductor elements. In such a module, only good memory subarrays are used, which leads to a variable number of ad dressable memory elements. For example, there may be IUU subarrays. each ofwhich includes a shift register storage element. When the fabrication process results in representative yields of 40-80 percent good subarrays. the number of addressable shift registers varies from 600 to L200 per module. A memory subsystem using such modules and minimizing unused good subarrays could be comprised of assemblies. each assembly having 4.096 (2' addressable subarrays on a total of five modules.

If each module has its subarrays numbered from zero, it is then necessary to provide hardware to map the 4.096 assembly addresses into a set of module select signals and sets of module subarray addresses. If the yield should substantially improve. it may be possible to reduce the number of modules to four per assembly. An excess to higher yield modules may be disposed of by derating them to a lower size group. In general, the yield distribution of modules is variable and assembly address transformation hardware should be adaptable thereto.

Accordingly, it is an object of the invention to pro vide a memory assembly in which memory modules having different sizes of addressable elements are used.

It is a further object of the invention to provide address transformation hardware which is adaptable to a variable set of memory module sizes.

SUMMARY OF THE INVENTION A memory assembly is provided in which a plurality of memory modules are used and the modules have dif ferent numbers of memory elements. The memory modules are provided with sources of size signals representing the number of addressable elements. A first subtracter responsive to the input address and the size signals from a first memory module generates a first transformed address. An inverter complements the input address signals. A second subtracter subtracts the size signal from the complemented input address to generate a second transformed address. Comparators. responsive to the input address and the module size sig nals. selectively enable one of the memory modules. A multiplexer. responsive to the subtracters and the comparators, generates the desired address for the selected memory module.

BRIEF DESCRIPTION OF THE DRAWINGS FIG. I is a block diagram of an address transforma tion system embodying the invention. FIG. IA is a diagram illustrating the field-effect transistor symbol used in the remaining figures. FIG. 2A is a schematic dia gram ofa half adder stage used in FIG. I. FIG. 2B is a schematic diagram ofa full adder stage used in FIG. 1. FIG. 3 is a diagram showing how the FIG. 28 full adder stages and FIG. 2A half adder stages are interconnected to form complete adders. FIG. 4 is a schematic diagram ofa FIG. I comparator stage. FIG. 5 is a schematic diagram ofa FIG. I subtracter stage. FIG. 6 is a schematic diagram of the FIG. I selectors. FIG. 7 is a schematic diagram ofa FIG. I multiplexer stage.

DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION FIG. 1 is a memory assembly using memory modules which have approximately 800 addressable memory elements each on the average. Each memory module is provided with a set of output pins which are connected to the module supply voltages through fusible links that are selectively disconnected at the time of fabrication so as to provide a set of size signals representing the number of memory elements contained therein. mod ulo 64. Five memory modules or devices I II5 are addressed by l2 address lines X The six low order lines are connected to all of the memory modules through inverter 18 and the six high order lines are directed to the address transformation logic, which is preferably constructed as a single integrated circuit. A static AB adder 2], responsive to four size signals M and M from memory modules II and 12, generates a set of composite size signals A representing the sum of the two modules sizes. Similarly, static DE adder 22 is reponsive to size signals M and M from memory modules 14 and IS to generate A representing the sum of the two module sizes The ABDE adder 23 generates A which is the sum of A and A A comparator 31, which is comprised essentially of adder carry-look-ahead logic, compares the size signals from memory module 11 with the high order address bits. Inverter l9 inverts each of the high order address bits, which produces the complement of the address X Comparator 34, in a manner similar to comparator 3], compares the size signals from memory module 15 with the inverted high order memory address bits. Comparators 32 and 33 compare the sum signals A and A with the true and complemented address bits, respectively. A subtracter responsive to the size signals from memory module 1] and the address signals X generates a transformed address Y,. Similarly, subtracters S2 and 53 generate transformed addresses Y and Y by subtracting the size M of module and the sum of the sizes of modules 11 and 12 from the ad dresses X' a and X respectively. Multiplexer 60 accepts the transformed address from subtracters 51-53, the true address X and the inverted address X' One of these addresses is selected as the address trans formation logic output in accordance with the selection signals from selectors 4l-43. Selector 4] is responsive to comparators 3] and 32 and generates memory mod ule select signals for modules ll and 12, which also control multiplexer 60. Similarly, selector 42 is respon' sive to comparators 33 and 34 for selecting modules 14 and 15 and providing further control of multiplexer 60. Selector 43, responsive to comparators 32 and 33 se lects module 13 and provides the last control signal for multiplexer 60.

The logic is conveniently implemented with C/MOS. complementary metal-oxide-silicon semiconductor technology for which the symbol of FIG. 1A is used to represent the field-effect transistors. FlG. 2A illustrates a half adder stage with a carry-in effectively hard-wired for use in adders 2l-23, thereby converting the size numbers to start with one. In the usual relay-like logic configuration, n type transistors 61 are connected to generate the usual half adder carry-out:

where the C/MOS output logic level is inherently com plemented. The p-type transistors 62 form the complementary logic (u'h'), because the inputs to the p-type transistors are effectively complemented relative to the n-type transistors. The transistor sections 6] and 62 form a bridge between supply voltages of+ 5 and 5 volts whereby the center point is at approximately 5 volts for a l signal and 5 volts for a "U" signal. Similarly. transistors 63 generate the sum:

Transistors 64 effectively form the dual of the sum function so that S is at either a 5 or 5 volt level. The pair of transistors 65 invert the first level output, nu! oul T- ln :1 similar manner the F16. 2B logic provides a full adder. Transistors 67 provide the logic for a full adder carry-out:

C' ((u hm ab) Because of the symmetrical nature ofthe carry-out function, it is a dual of itself so that the logic for the transistor section 68 is the same as transistor section 67. The sum signal is provided by transistor section 69:

S' ((u b uhtm) For this symmetrical function, the dual provided by transistor section 70 is again identical. The pair of complementing transistors 71 provide a true carry-out, C t flflf)" FIG. 3 shows half adder and full adder stages interconnected to form static adders 21-23. Adder 2] is comprised of half adder 73 and full adders 74-76. The half adder 73 receives inputs from the least significant bits of the memory modules I] and 12, M and M Full adder 74 receives a carry-in from the half adder 73 carry-out and the next significant bits from modules 11 and 12, M and M Similarly, full adder 75 receives a carry-in from the full adder 74 carry-out and inputs M,, and M Full adder 76 receives complemented inputs M' and M together with a complemented carry-in so that a true sum bit is generated. Adder 22 is connected to memory modules 14 and 15 in the same manner. Half adder 78 and full adders 79-8l receive inputs M and M,,-, Adder 23 receives inputs from the outputs of adders 21 and 22. Half adder 83 (moditied to accept complemented inputs) and full adders 84-86 receive the four outputs of corresponding adder stages and full adder 87 receives from each of the most significant stages. The output of adder 23 is made available through output pins so that the size required for module 13 can be determined when the system is assembled.

The comparator 32 of FIG. 4 is basically a carrylook-ahead unit for comparing the input address X 4 with the added size signals A For the least significant bits, transistor pair 89 generates the first carry or borrow term:

25 s Ans Transistor pair provides the complemented logic function for For the outputs C and transistor pairs 90 and 91 provide partial functions identical with and transistor pairs 96 and 97 provide the same function as transistor pair 95. The transistor section 92 provides a generate and propagate relation for the next significant hit, hence;

21 ((XBAFAH5) 4 ms) X4AI-IIH)" Transistor section 98, together with transistor 96 provides the complementary function for Transistor sections 93 and 99 duplicate sections 92 and 98 for and the generate and propagate relation for the next significant bit is provided by transistor sections 94 and 100, hence:

For the most significant bit C the logic is extended in a similar manner by transistor sections 102 and 103, hence:

20 ad 2 nna) 'z Lum) (XII/1AM], X'IAAHI) 'o) In effect, the composite memory module size is complemented and added to the input address. The carryout C for the most significant bit is then a l if and only if the input address is greater than A The comparators 3], 33 and 34 are essentially the same as comparator 32 except that the comparators 31 and 34 have the transistors in sections 104 and 105 deleted.

Representative subtracter logic is shown in FIG. 5 for subtracter 5]. For the least significant bit, logic section 106 forms the exclusive OR function of the inputs X and M' with a carry-in wired in:

The pair of transistors 55 and 56 and the pair of transistors 57 and 58 operate as inverters. For the next significant bit, logic 107 forms the sum bit using the carry from comparator 31.

The next significant sum bit Y uses logic identical to that employed for Y The sum bit 1' is formed by logic 108:

Selectors 41-43 are shown in FIG. 6. The output C of comparator 34 directly provides a signal E' in com plement form for address selection in the multiplexer 60. The system strobe and its complement generated by transistor pair 110 together with are applied to logic 111 to generate the strobed memory module select sig nal E Logic 111 ANDs the strobe with the comparator output C latches up the result, and provides a signal suitable for driving off chip. Logic 112 inverts comparator 33 output C and ANDs it with the output C of comparator 34 to generate the memory module select signal for multiplexer 60. Memory module 14 is therefore selected when the complement of the input address X is greater than the size M of module 15 but less than the size of modules 14 and 15. Logic 113, identical with logic 111, generates the strobed off chip module select signal E Logic 114 ANDs the outputs C and C from comparators 32 and 33 to form memory module select signal E Therefore, memory mod ule 13 is selected when the input address is greater than the sum of the sizes of modules 11 and 12 and the input address complemented is greater than the sum of the sizes of modules 14 and 15. The output C ofcomparator 31 is used directly to select E the address for module 11 in the same way as was used. The select and buffer logic 115, 117 and 118 are identical with the select and buffer logic 111.

FIG. 7 shows one of four identical stages which comprise multiplexer 60. Logic 121 multiplexes the direct input address bit X, and its complement X, in accordance with the respective select signals E and E accordance with the module address select signals E' E and EH Logic 123 combines the multiplexed bit signals by ORing them together.

Logic 124 is similar to the select and buffer logic 111 and generates the off chip address bit signal Z".

The computer system of FIG. 1 is versatile. Although it is adapted to serve five memory modules, fewer modules can be used. For example, if four modules can span the address space of 2 storage elements, memory module 13 is dispensed with. If three modules are sufficient, module 14 is dispensed with and the input pins to DE adder 22 are connected to a logical zero level supply voltage for the memory device D input. However, with fewer than five modules, an additional bit is required for addressing a module with more than 1,024 memory elements, in general, but no modification is required for the integrated circuit providing the address transformation. The input address lines for X are then connected to the memory modules through inverter 18. Then the input address lines for X are shifted to those inputs previously used for X and a logical one connected as the complement of the most significant bit. Correspondingly, memory modules would then be provided with four size bits representing the number of addressable memory elements modulo 128.

Furthermore, the address transformation integrated circuit is not limited to use in memory assemblies having 2 addressable memory elements. By increasing or decreasing the number of low order lines connected di rectly to the modules, a wide range of memory assem' bly sizes can be accommodated.

It is understood that the invention should not be construed as being limited to the form of embodiment described and shown herein as many modifications may be made by those skilled in the art without departing from the scope of the invention.

What is claimed is:

1. Apparatus for transforming a set of input binary address signals into a plurality of sets of addresses for at least two pairs of memory modules, such that the aggregate of the module addresses spans the address capcity of the input address signals, comprising:

A. an inverter, responsive to the input address signals, for generating the complement of the input address;

B. a first subtracter, responsive to a set of input address signals and a set of signals representing the number of storage elements in a first memory module, for generating a first set of transformed address signals;

C. a second subtracter, responsive to said inverter and a set of signals representing the number of storage elements in a second memory module, for generating a second set of transformed address signals;

D. a first comparator, responsive to input address signals and a set of signals representing the number of storage elements in a first memory module, for gen erating a first selection signal indicating that the input address is greater than the capacity of the first memory module;

E. a second comparator, responsive to said inverter and a set of signals representing the number of storage elemtns in a second memory module, for generating a second selector signal indicating that the complement of the input address is greater than the capacity of the second memory module;

F. signals representing the number of storage elements in first and second pairs of memory modules including said first and second memory modules, for generating first and second sums representing the numbers of storage elements in said first and second and pairs of memory modules, respectively;

G. a third comparator, responsive to the input address signals and said first adder for generating a selector signal representing whether or not the input address is greater than said first sum;

H. a fourth comparator, responsive to the complemented input address signals am! said second adder for generating a selector signal representing whether or not the complemented input address is greater than said second sum;

1. a third subtracter, responsive to the set of input address signals and a set of signals representing the number of storage elements in said first pair of memory modules for generating a third set of transformed address signals.

J. a multiplexer, receiving the sets of input address signals, complemented input address signals and said transformed address signals, for selecting the desired module address, in response to said selector signals from said comparators.

2. The apparatus of claim 1, further comprising:

K. a set of buffers in said multiplexer for generating output signals suitable for connection off chip.

3. A memory system responsive to a set of input address signals comprising:

A. a plurality of memory modules, each module having a source of signals representing the number of addressable memory cells contained therein;

B. first and second adders, connected to first and sec ond pairs of said memory modules, for generating the respective sums of the number of storage cells;

C. an inverter, responsive to a set of input address signals, for generating the complement of the address;

D. a first comparator, responsive to a first one of said memory modules and the input address signals for generating a plurality of intermediate carry signals and a carry-out signal;

E. a second comparator, responsive to said first adder and the input address signals for generating a plurality of intermediate carry signals and a carry-out signal;

F. third and fourth comparators, similarly responsive to said second adder and the last of said memory modules, respectively, together with the inverted input address signals, from said inverter, each comparator generating a plurality of intermediate carry signals and a carry-out signal;

G. first, second and third subtracters, responsive to the first and last said memory modules and said first adder, respectively, together with said input address signals, for transforming the input address in accordance with the actual sizes of said memory modules whereby a complete set of storage locations is provided for the address span of the input address signals;

H. multiplexer means receiving the input address sig nals, said inverter output and each of said subtracter outputs, and responsive to the carry-out signuls from said comparators for selecting the desired output address.

4. Address transformation apparatus responsive to input address signals comprising:

A. first through fifth memory modules, each module having a set of addressable storage elements and a set of signals representing the number of storage elements therein;

B. an inverter responsive to the input address signals for generating the complement ofthe input address signals;

C. a first adder, responsive to the signals from said first and second memory modules for providing a first set of limit signals;

D. a second adder, responsive to the fourth and fifth memory modules for providing a second set of limit signals;

E. a first comparator, consisting of carry look-ahead logic, responsive to the input address signals and said first memory module size signals, and the input address signals for generating a plurality of intermediate carry signals and a carry-out signal for providing a set of intermediate carry signals and a carry-out signal;

F. a second comparator, consisting of carry lookahead logic, responsive to the input address signals and said first adder;

G. a third comparator, responsive to the input address signals and said fifth memory module size signals, and the input address signals for generating a plurality of intermediate carry signals and a carryout signal;

H. a fourth comparator, responsive to the input address signals and said second adder, and the input address signals for generating a plurality of intermediate carry signals and a carry-out signal;

1. a first substracter, responsive to the input address signals, said first comparator carry signals and said first memory module size signals for generating a first transformed address;

.I. a second subtracter, responsive to the input address signals, said third comparator carry signals and said fifth memory module size signals for gen erating a second transformed address;

K. a third subtracter, responsive to the input address signals, said fourth comparator carry signals and said second adder for providing a third transformed address;

L. a first selector responsive to said first and second comparator carry-out signals when the input address is not greater than said first module size and greater than said first module size but not greater than the sum of the first and second module sizes, respectively;

M. a second selector responsive to said third and fourth comparator carry-out signals for generating fifth and fourth memory module selection signals when the complemented input address is not greater than said fifth module size and greater than said fifth module size but not greater than the sum of the fourth and fifth modules, respectively;

N. a third selector, responsive to said second and fourth comparator carry-out signals for generating a third memory module select signal when the input address is greater than the sum of said first and second module sizes and the complemented input address is greater than the sum of said fourth and fifth module sizes;

0. a multiplexer for gating the input address, one of said transformed addresses or the complemented input address in accordance with said memory module select signals.

t a k a 

1. Apparatus for transforming a set of input binary address signals into a plurality of sets of addresses for at least two pairs of memory modules, such that the aggregate of the module addresses spans the address capcity of the input address signals, comprising: A. an inverter, responsive to the input address signals, for generating the complement of the input address; B. a first subtracter, responsive to a set of input address signals and a set of signals representing the number of storage elements in a first memory module, for generating a first set of transformed address signals; C. a second subtracter, responsive to said inverter and a set of signals representing the number of storage elements in a second memory module, for generating a second set of transformed address signals; D. a first comparator, responsive to input address signals and a set of signals representing the number of storage elements in a first memory module, for generating a first selection signal indicating that the input address is greater than the capacity of the first memory module; E. a second comparator, responsive to said inverter and a set of signals representing the number of storage elemtns in a second memory module, for generating a second selector signal indicating that the complement of the input address is greater than the capacity of the second memory module; F. signals representing the number of storage elements in first and second pairs of memory modules including said first and second memory modules, for generating first and second sums representing the numbers of storage elements in said first and second and pairs of memory modules, respectively; G. a third comparator, responsive to the input address signals and said first adder for generating a selector signal representing whether or not the input address is greater than said first sum; H. a fourth comparator, responsive to the complemented input address signals and said second adder for generating a selector signal representing whether or not the complemented input address is greater than said second sum; I. a third subtracter, responsive to the set of input address signals and a set of signals representing the number of storage elements in said first pair of memory modules for generating a third set of transformed address signals. J. a multiplexer, receiving the sets of input address signals, complemented input address signals and said transformed address signals, for selecting the desired module address, in response to said selector signals from said comparators.
 2. The apparatus of claim 1, further comprising: K. a set of buffers in said multiplexer for generating output signals suitable for connection off chip.
 3. A memory system responsive to a set of input address signals comprising: A. a plurality of memory modules, each module having a source of signals representing the number of addressable memory cells contained therein; B. first and second adders, connected to first and second pairs of said memory modules, for generating the respective sums of the number of storage cells; C. an inverter, responsive to a set of input address signals, for generating the complement of the address; D. a first comparator, responsive to a first one of said memory modules and the input address signals for generating a plurality of intermediate carry signals and a carry-out signal; E. a second comparator, responsive to said first adder and the input address signals for generating a plurality of intermediate carry signals and a carry-out signal; F. third and fourth comparators, similarly responsive to said second adder and the last of said memory modules, respectively, together with the inverted input address signals, from said inverter, each comparator generating a plurality of intermediate carry signals and a carry-out signal; G. first, second and third subtracters, responsive to the first and last said memory modules and said first adder, respectively, together with said input address signals, for transforming the input address in accordance with the actual sizes of said memory modules whereby a complete set of storage locations is provided for the address span of the input address signals; H. multiplexer means receiving the input address signals, said inverter output and each of said subtracter outputs, and responsive to the carry-out signals from said comparators for selecting the desired output address.
 4. Address transformation apparatus responsive to input address signals comprising: A. first through fifth memory modules, each module having a set of addressable storage elements and a set of signals representing the number of storage elements therein; B. an inverter responsive to the input address signals for generating the complement of the input address signals; C. a first adder, responsive to the signals from said first and second memory modules for providing a first set of limit signals; D. a second adder, responsive to the fourth and fifth memory modules for providing a second set of limit signals; E. a first comparator, consisting of carry look-ahead logic, responsive to the input address signals and said first memory module size signals, and the input address signals for generating a plurality of intermediate carry signals and a carry-out signal for providing a set of intermediate carry signals and a carry-out signal; F. a second comparator, consisting of carry look-ahead logic, responsive to the input address signals and said first adder; G. a third comparator, responsive to the input address signals and said fifth memory module size signals, and the input address signals for generating a plurality of intermediate carry signals and a carry-out signal; H. a fourth comparator, responsive to the input address signals and said second adder, and the input address signals for generating a plurality of intermediate carry signals and a carry-out signal; I. a first substracter, responsive to the input address signals, said first comparator carry signals and said first memory module size signals for generating a first transformed address; J. a second subtracter, responsive to the input address signals, said third comparator carry signals and said fifth memory module size signals for generating a second transformed address; K. a third subtracter, responsive to the input address signals, said fourth comparator carry signals and said second adder for providing a third transformed address; L. a first selector responsive to said first and second comparator carry-out signals when the input address is not greater than said first module size and greater than said first module size but not greater than the sum of the first and second module sizes, respectively; M. a second selector responsive to said third and fourth comparator carry-out signals for generating fifth and fourth memory module selection signals when the complemented input address is not greater than said fifth module size and greater than said fifth module size but not greater than the sum of the fourth and fifth modules, respectively; N. a third selector, responsive to said second and fourth comparator carry-out signals for generating a third memory module select signal when the input address is greater than the sum of said first and second module sizes and the complemented input address is greater than the sum of said fourth and fifth module sizes; O. a multiplexer for gating the input address, one of said transformed addresses or the complemented input address in accordance with said memory mOdule select signals. 